package cn.tedu.spring.life;

public class ShutDownHookDemo {
    public static void main(String[] args) throws InterruptedException {
        // runtime代表当前正在运行的虚拟机，Runtime可以获取当前正在运行的虚拟机的参数
        Runtime runtime = Runtime.getRuntime();
        // 获取当前虚拟机的总内存数量
        long bytes = runtime.totalMemory();
        System.out.println("totalMemory:"+bytes);
        // runtime上添加了关闭钩子
        // 关闭钩子会在主线程结束时自动执行钩子线程
        runtime.addShutdownHook(new DemoHook());
        Thread.sleep(5000);
        System.out.println("主线程结束啦~");
    }
}

// 创建的一个钩子(其实就是一个线程)
class DemoHook extends Thread{
    @Override
    public void run() {
        System.out.println("关闭钩子！");
    }
}
